capturing, encoding and rendering gestures using the kinect adan patience supervisor: mr. mehrdad...

12
Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds Mentor: Mr. Kenzo Abrahams

Upload: jeffery-franklin

Post on 30-Dec-2015

227 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Capturing, Encoding and Rendering Gestures using

the Kinect

Adan PatienceSupervisor: Mr. Mehrdad Ghaziasgar

Co-Supervisor: Mr. Reginald McDonald DoddsMentor: Mr. Kenzo Abrahams

Page 2: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Overview

▪ Recap

▪ Design Decisions and System Changes

▪ Interface

▪ Implementation

▪ Tools Used

▪ Project Plan

Page 3: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Recap Introduction

▪ Many countries lack networking infrastructures which support video chatting applications such as Skype.

▪ Develop towards a video chatting application using the Kinect, that could possibly be used extensively by the deaf in the future.

Page 4: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Recap Work Flow

Page 5: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Recap High Level Design

Input

Video Frames

CaptureLocate

and Track User

Encode

Get Joint Coordinat

es

Write Coordinate

s to File

RenderGet

Frame and Read Coordinat

es

Inert Key Frame

Animate

Page 6: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Design Decisions and System Changes

Previously

▪ No Configuration File

▪ Append Coordinates to tracking file

▪ Used line number in tracking file to determine frame number

▪ Key frame every 24th set of coordinates

▪ No real-time

Currently

▪ Create Configuration file

▪ Overwrite tracking file containing coordinate points

▪ Create new file to store the frame count

▪ Key frame every 10th set of coordinates

▪ real-time key framing

Page 7: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

User Interface

▪ Setting foundation for the application

▪ Application not at a mature enough state for a user interface

Page 8: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Implementation

Input

Update Skeleton

CaptureProcess Skeleton

Draw Skeleton

Encode

Get Joint Coordinates and Frame

Count

Write Coordinates to File and

Frame Count

Render

Configure User and

Get Frame Count

Get Coordinat

es

Map Coordinat

es

Insert Key Frame

Animate

Page 9: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Configure User

▪ Assume 3 Positions for the Configuration File– Rest Arms– Arms Up– Spread Arms

▪ Coordinates are stored in CONF.csv– Average of the centre shoulder position is

calculated– Minimum and Maximum of both x and y

coordinates are determined for both hands.

centre shoulder

Minimumy-position

Maximum x-position

Maximum y-position

Minimum x-position

Page 10: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Map Coordinates

▪ Right Wrist

▪ Left Wrist

Left Wrist

Centre ShoulderRight Wrist

-6.5 UnitsOrigin

6.5 Units

Page 11: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Tools Used

▪ Platform– Windows 7 x86

▪ Applications– Blender 2.49b– Visual Studio 2013– Kinect SDK

▪ Languages– Python 2.6– C++

Page 12: Capturing, Encoding and Rendering Gestures using the Kinect Adan Patience Supervisor: Mr. Mehrdad Ghaziasgar Co-Supervisor: Mr. Reginald McDonald Dodds

Project Plan

Term1

• Identify User Requirements, Analyse User Requirements, Literature Survey

• Become Acquainted with OpenCV and C++

Term2

• Identify Objects and Classes in the OOD and analyse the Class’ methods and attributes, Design UI and Choose the Render Application

• Familiarise myself with the Kinect SDK and API

Term3

• Create the Capture and Encode Classes leveraging from the Kinect• Develop the mapping function. Create UI and finalise application

Term4

• Test the application against the User Requirements• Optimise where possible and iron out bugs