Contents. Introduction Hardware Demos Software. More demos Projects using Kinect Upcoming sensors. Freenect OpenNI+ NITE + SensorKinect



Similar documents
DESIGN OF A TOUCHLESS USER INTERFACE. Author: Javier Onielfa Belenguer Director: Francisco José Abad Cerdá

VIRTUAL TRIAL ROOM USING AUGMENTED REALITY

How does the Kinect work? John MacCormick

Master Thesis Using MS Kinect Device for Natural User Interface

USB 3.0 Camera User s Guide

EVALUATION OF KINECT JOINT TRACKING FOR CLINICAL AND IN-HOME STROKE REHABILITATION TOOLS. A Thesis. Kathryn LaBelle

Kinect Interface to Play Computer Games with Movement

Introduction to the Perceptual Computing

USB PC Camera User s Guide

GestPoint Maestro3D. A White Paper from GestureTek The Inventor of 3D Video Gesture Control

Microsoft Office 2010 system requirements

KCI Communications, Inc Ensell Road, Suite 100 Lake Zurich, IL

Mobile Operating Systems Lesson 05 Windows CE Part 1

Human Motion Tracking for Assisting Balance Training and Control of a Humanoid Robot

OD-325HD-2.5MM. H.264 MegaPixel Outdoor 25M IR Night vision POE Camera. H.264 Compression. IP66 Waterproof Resistance

Product Information. QUADRA-CHEK 3000 Evaluation Electronics For Metrological Applications

Interaction devices and sensors. EPFL Immersive Interaction Group Dr. Nan WANG Dr. Ronan BOULIC

Most laptops allow you to plug in a second monitor, which can be a TV screen or Projector I will refer to a monitor in this document.

GRAND Wi-Fi SURVEILLANCE SYSTEM

Product specifications

Solomon Systech Image Processor for Car Entertainment Application

FARO Technologies Inc. Internal Control File Location: X:\CONTROL\RECORDS\05MANUFA\PARTSPEC\7 Software\E1073_SCENECT_5.2_Manual_EN.

Roles of Smart TV in Internet of Things

AXIS Video Capture Driver. AXIS Video Capture Driver. User s Manual

CAMBRIDGE CELTA COURSE ONLINE FAQ SHEET

An open-source tool for distributed viewing of kinect data on the web

C# Implementation of SLAM Using the Microsoft Kinect

USB Port Extender Kit

Wii Remote Calibration Using the Sensor Bar

How To Use A Wireless Pan & Tilt Camera On A Pc Or Mac Or Ipad (For Pc) For Free (For Mac) For A Week (For A Week) For $99.99) For Two Weeks (For Ipad)

Camera Sensor Driver Development And Integration

Multi-Profile CMOS Infrared Network Camera

Sample Project List. Software Reverse Engineering

802.3af. Build-in Speaker. PoE

Megapixel IP66. IP66 Waterproof Housing, Cable through bracket and Anti-Fog Front Cover

USB 3.0 to HDMI External Multi Monitor Graphics Adapter with 3-Port USB Hub HDMI and USB 3.0 Mini Dock 1920x1200 / 1080p

802.3af. Build-in Speaker. PoE

Epiphan Frame Grabber User Guide

7 MEGAPIXEL 180 DEGREE IP VIDEO CAMERA

Development and Evaluation of Point Cloud Compression for the Point Cloud Library

Locus digital DVB-T STB

Next Generation Natural User Interface with Kinect. Ben Lower Developer Community Manager Microsoft Corporation

Development of 3D Image Manipulation Software Utilizing the Microsoft Kinect

Basler. Line Scan Cameras

Basler. Area Scan Cameras

Introduction to Digital Video

Digital Video Recorder

USB 3.0 to VGA External Multi Monitor Graphics Adapter with 3-Port USB Hub VGA and USB 3.0 Mini Dock 1920x1200 / 1080p

2MP H.264/ MPEG-4/ MJEPG

Using Smartphones and Tablets in Embedded Applications

Gesture-Based Human-Computer-Interaction Using Kinect for Windows Mouse Control and PowerPoint Presentation

PoE-2600HD. 355 Pan. 90 Tilt. PoE af PoE H Mega-Pixel PT IP Camera 16 :9 FPS H.264

THE MS KINECT USE FOR 3D MODELLING AND GAIT ANALYSIS IN THE MATLAB ENVIRONMENT

B Series Robot Model. IP Camera V4.18. User Manual

SIGN LANGUAGE CONVERTER

How To Compare Video Resolution To Video On A Computer Or Tablet Or Ipad Or Ipa Or Ipo Or Ipom Or Iporom Or A Tv Or Ipro Or Ipot Or A Computer (Or A Tv) Or A Webcam Or

AirCam OD-325HD-2.5MM

Embedded Display Module EDM6070

T-REDSPEED White paper

SOFTWARE INSTALLATION AND USB/i.LINK CONNECTION GUIDE

IP Video Rendering Basics

Artikel-Detailinformationen

Car Racing Game. Figure 1 The Car Racing Game

Universal Push2TV HD Adapter PTVU1000 Installation Guide

Display the World with Orion e-board Solutions

Nero MediaStreaming for MCE Manual

Revision history: New comments added to: m)! Universal Driver

Datasheet. Wireless-N Internet Home Monitoring Camera. Delivers high-quality audio/video wirelessly for computer, smartphone, or Web viewing

Spatio-Temporally Coherent 3D Animation Reconstruction from Multi-view RGB-D Images using Landmark Sampling

magicbox.agrg.ru synesis.ru ENC-1 Single channel video analytics encoder module datasheet

AirCam PoE-2600HD. 355 Pan. 90 Tilt. PoE af PoE H Mega-Pixel PT IP Camera 16 :9 FPS H.264

How To Use Trackeye

Learn Microsoft Kinect API

Video in Logger Pro. There are many ways to create and use video clips and still images in Logger Pro.

Basler pilot AREA SCAN CAMERAS

Introduction. Features. Characteristics. USB3 Module for FLIR TAU2

Full page passport/document reader Regula model 70X4M

Issues in Android on Mobile Platform and Their Resolution

Q. Can an Exceptional3D monitor play back 2D content? A. Yes, Exceptional3D monitors can play back both 2D and specially formatted 3D content.

Professor, D.Sc. (Tech.) Eugene Kovshov MSTU «STANKIN», Moscow, Russia

Emerging Markets for H.264 Video Encoding

Lesson 10:DESIGN PROCESS EXAMPLES Automatic Chocolate vending machine, smart card and digital camera

MOVEIRO BT-200 Technical Information for Application Developer

Centralized Monitoring Management Platform Manual

Narrow Bandwidth Streaming Video Codec

COMPACT DISK STANDARDS & SPECIFICATIONS

DINAMIC AND STATIC CENTRE OF PRESSURE MEASUREMENT ON THE FORCEPLATE. F. R. Soha, I. A. Szabó, M. Budai. Abstract

Dazzle. Digital Video Creator 100 User s Guide

A General Framework for Tracking Objects in a Multi-Camera Environment

ALL-AIO-2321P ZERO CLIENT

USB to DVI Video Adapter

Chapter 1 Video Capture Cards

Corrigendum. 1. The amendment in Section 3.2 Eligibility Criteria sub-clause no. 4 and xiv are as under:-

Hand Analysis Tutorial Intel RealSense SDK 2014

Network Camera SNC-P1

Transcription:

Kinect C. Andújar

Contents Introduction Hardware Demos Software Freenect OpenNI+ NITE + SensorKinect More demos Projects using Kinect Upcoming sensors

INTRODUCTION

3D input competitors

Kinectorigins PrimeSense Israeli company (2005) focused on vision and natural interaction Natural interface for controlling living-room devices (e.g. TVs) Gesture-based browsing of images, video Full-body interaction for games PrimeSensor low-cost device for TV screens providing real-time depth, color and audio data of the living room. The user is not required to wear or hold anything Insensitive to lighting conditions It does not require calibration

Microsoft Kinect New controller for Microsoft s Xbox 360 Full-body tracking, face and voice recognition Low cost (99 Euros as of April 2011)

HARDWARE

Main components

Main components Video Color CMOS camera Infrared(IR) CMOS camera Infrared projector -830nm, 60mWlaser diode. Audio Four microphones Tilt control Motor Accelerometer(3-axes) Processors & memory PrimeSense chip PS1080-A2 64 MB DDR2 SDRAM

Image sensors Color camera: 640x480 sensor, 640x480@30fps output IR camera: 1280x1024 sensor, 640x480@30fps output Operation range (depth sensor) = 0.8m -3.5m FOV = 58 H, 45 V, 70 D Spatial resolution (@ 2m distance) = 3mm Depth resolution (@ 2m distance) = 1cm

Image sensors specs

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.

Connecting the Kinectto a PC Trivial for old Kinectmodels (those sold separately): USB-2 standard connector

Further info on Kinect s hardware http://www.ifixit.com/teardown/microsoft-kinect-teardown/4066/1 http://openkinect.org/ http://www.freepatentsonline.com/7433024.pdf

Viewer (color map, IR map, depth map); skeletor DEMOS

SOFTWARE

Drivers

libfreenect www.openkinect.org Unofficial, open source driver (GLP2) Linux, Windows, OS X Raw data (color map, IR map, depth map) Installation: trivial

OpenNI+ NITE + SensorKinect OpenNI NITE SDK for natural interfaces; open source www.openni.org OpenNI Plugin for gesture/pose recognition; closed source www.openni.org SensorKinect Driver for the Kinect; fork from the PrimeSensor driver (open source) github.com/avin2/sensorkinect

OpenNI Framework for modules/sensors providing depth maps, color maps, scene maps, gesture recognition, user pose (skeleton) www.openni.org

OpenNI OpenNIaims at abstracting developers from sensor hardware (Kinect, PrimeSensor ) and CV algorithms(scene analysis, gesture recognition, pose recognition )

OpenNI

OpenNIbasic concepts Production node: device/map/cv algorithm abstraction Production graph: a particular combination of nodes Module: plug-in (.dll,.so file) implementing nodes

OpenNInodes Audio Depth Image IR SceneAnalyzer Gestures Hands User Recorder Player Codec generates an audio stream generates depth-maps generates color maps generates IR maps generates a label map (e.g. segmenting objects) recognizes gestures and calls specific callbacks recognizes hands and calls specific callbacks when a hand appears/is moved/disappears computes user 3D info (including center of mass, pose detection, skeleton) and calls specific callbacks saves node data to a file read data from a file and replays it used for compression and decompression of data in recordings

OpenNInodes Audio generates an audio stream Depth generates depth-maps Image generates color maps IR generates IR maps SceneAnalyzer generates a label map (e.g. segmenting objects) Gestures recognizes gestures and calls specific callbacks Hands recognizes hands and calls specific callbacks when a hand appears/is moved/disappears User computes user 3D info (including center of mass, pose detection, skeleton) and calls specific callbacks Recorder saves node data to a file Player read data from a file and replays it Codec used for compression and decompression of data in recordings

OpenNInodes -Audio

OpenNInodes Audio generates an audio stream Depth generates depth-maps Image generates color maps IR generates IR maps SceneAnalyzer generates a label map (e.g. segmenting objects) Gestures recognizes gestures and calls specific callbacks Hands recognizes hands and calls specific callbacks when a hand appears/is moved/disappears User computes user 3D info (including center of mass, pose detection, skeleton) and calls specific callbacks Recorder saves node data to a file Player read data from a file and replays it Codec used for compression and decompression of data in recordings

OpenNInodes -Maps

OpenNInodes -Maps

OpenNInodes Audio generates an audio stream Depth generates depth-maps Image generates color maps IR generates IR maps SceneAnalyzer generates a label map (e.g. segmenting objects) Gestures recognizes gestures and calls specific callbacks Hands recognizes hands and calls specific callbacks when a hand appears/is moved/disappears User computes user 3D info (including center of mass, pose detection, skeleton) and calls specific callbacks Recorder saves node data to a file Player read data from a file and replays it Codec used for compression and decompression of data in recordings

OpenNInodes -Recognition

OpenNInodes -User node

XN_SKEL_HEAD XN_SKEL_NECK XN_SKEL_TORSO XN_SKEL_WAIST XN_SKEL_LEFT_COLLAR XN_SKEL_LEFT_SHOULDER XN_SKEL_LEFT_ELBOW XN_SKEL_LEFT_WRIST XN_SKEL_LEFT_HAND XN_SKEL_LEFT_FINGERTIP XN_SKEL_RIGHT_COLLAR XN_SKEL_RIGHT_SHOULDER XN_SKEL_RIGHT_ELBOW XN_SKEL_RIGHT_WRIST XN_SKEL_RIGHT_HAND XN_SKEL_RIGHT_FINGERTIP XN_SKEL_LEFT_HIP XN_SKEL_LEFT_KNEE XN_SKEL_LEFT_ANKLE XN_SKEL_LEFT_FOOT XN_SKEL_RIGHT_HIP XN_SKEL_RIGHT_KNEE XN_SKEL_RIGHT_ANKLE XN_SKEL_RIGHT_FOOT OpenNInodes -Skeleton

OpenNIexample // Initialize context object xn::context context; context.init(); // Create a DepthGenerator node xn::depthgenerator depth; depth.create(context); // Make it start generating data context.startgeneratingall(); while (true) { // Wait for new data to be available XnStatus status = context.waitoneupdateall(depth); if (status == XN_STATUS_OK) { const XnDepthPixel* pdepthmap = depth.getdepthmap(); // process depth map. }

OpenNI-Initializing nodes // Create a DepthGenerator node xn::depthgeneratordepth; depth.create(context); // Configure node XnMapOutputModeoutputMode; outputmode.nxres= 640; outputmode.nyres= 480; outputmode.nfps= 30; status = depth.setmapoutputmode(outputmode);

Sample applications NiSimpleRead takes a depth generator node from an XML configfile and prints out the depth value of the middle pixel. NiSimpleViewer-OpenGL application which draws the depth maps and the color maps to the screen. NiSampleModule-sample for writing a module implementing a depth node with mirror capability. NiViewer displays depth, image and IR maps, plays audio, etc.

NITE Middleware for pose/gesture recognition

NITE Joint positions: given in real world coords(mm) Joint orientations: 3x3 rotation matrix representing the rotation of joint s local coordsw.r.t world coords(the first column is the direction of the joint s +X axis in world coordinates, and so on).

Kinectquick start (Windows) Install OpenNI binary Install SensorKinect binary Install NITE key 0KOIk2JeIBYClPWVnMoRKn5cdY4= Connect Kinectto PC Try demos

Sample-PointViewer, reconstructor, Miku 2 MORE DEMOS

Projects using Kinect About 420 projects in www.kinecthacks.net

Upcoming sensors