The Computer Vision Game Assistant C H E C K E R S M A T E S Levante Savo, Camelia Popa, Serban Meza, Oscar Medina, Ross Foley.

Slides:



Advertisements
Similar presentations
Prof. S. Pulman P. Blunsom N.T. Crook. Seek to combine Computer Vision with Natural Language Processing for applications in intelligent transport systems.
Advertisements

Programming for GCSE Topic 10.2: Designing for File I/O T eaching L ondon C omputing William Marsh School of Electronic Engineering and Computer Science.
Tic Tac Toe Game Design Using OOP
Documentation Generators: Internals of Doxygen John Tully.
Database-Based Hand Pose Estimation CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Richard Yu.  Present view of the world that is: Enhanced by computers Mix real and virtual sensory input  Most common AR is visual Mixed reality virtual.
Didier Perroud Raynald Seydoux Frédéric Barras.  Abstract  Objectives  Modalities ◦ Project modalities ◦ CASE/CARE  Implementation ◦ VICI, Iphone,
Artificial Intelligence and Lisp Lecture 13 Additional Topics in Artificial Intelligence LiU Course TDDC65 Autumn Semester, 2010
“Let’s Take This Outside” Boxing David A. Blau Uzoma A. Orji Reesa B. Phillips.
1 Lecture 1  Getting ready to program  Hardware Model  Software Model  Programming Languages  The C Language  Software Engineering  Programming.
Computers: Tools for an Information Age
Program Flow Charting How to tackle the beginning stage a program design.
Game Mathematics & Game State The Complexity of Games Expectations of Players Efficiency Game Mathematics o Collision Detection & Response o Object Overlap.
1.1 Introduction to Language Processor
Game Theory 2 Computer solutions.
SSIP Object tracking and automated video annotation Anca Croitor Sava – Timisoara, ROMANIA Anca Croitor Sava – Timisoara, ROMANIA Ágnes Bartha –
Introduce about sensor using in Robot NAO Department: FTI-FHO-FPT Presenter: Vu Hoang Dung.
Prototype & Design Computer Inputs. How to Prototype & Design Computer Inputs Step 1: Review Input Requirements Step 2: Select the GUI Controls Step 3:
Main points  Where it started  What is it  Computer animation  Java applets  Flash  Animation process  Optical illusion in motion  Claymation.
HAND GESTURE BASED HUMAN COMPUTER INTERACTION. Hand Gesture Based Applications –Computer Interface A 2D/3D input device (Hand Tracking) Translation of.
Programming Languages: Telling the Computers What to Do Chapter 16.
Deep Green System for real-time tracking and playing the board game Reversi Nadav Erell Intro to Computational and Biological Vision, CS department, Ben-Gurion.
Systems Analysis – Analyzing Requirements.  Analyzing requirement stage identifies user information needs and new systems requirements  IS dev team.
© Janice Regan, CMPT 128, Jan CMPT 128 Introduction to Computing Science for Engineering Students Creating a program.
ECSE 6610 Pattern Recognition Professor Qiang Ji Spring, 2011.
Automated Patent Classification By Yu Hu. Class 706 Subclass 12.
Parser-Driven Games Tool programming © Allan C. Milne Abertay University v
Trajectory of pingpong ball + Racket detection Replicating trajectory of the ball by interpolating 3D coordinates.
CSC 213 – Large Scale Programming Lecture 3: Object-Oriented Analysis.
M1G Introduction to Database Development 6. Building Applications.
Application in Computer Vision Final Project Nir Slakman, Oren Zur and Noam Ben-Ari.
Chess Playing Bot. Detecting Green coloured squares using Blobs.
The Generic Gaming Engine Andrew Burke Advisor: Prof. Aaron Cass Abstract Games have long been a source of fascination. Their inherent complexity has challenged.
Computabilty Computability Finite State Machine. Regular Languages. Homework: Finish Craps. Next Week: On your own: videos +
Computer Aided Process Planning (CAPP). What is Process Planning? Process planning acts as a bridge between design and manufacturing by translating design.

The LC-3 – Chapter 7 COMP 2620 Dr. James Money COMP
Dynamic web content HTTP and HTML: Berners-Lee’s Basics.
1 Programming with MATLAB ผศ. ดร. อนันต์ ผลเพิ่ม Anan Phonphoem
ENG College of Engineering Engineering Education Innovation Center 1 Array Accessing and Strings in MATLAB Topics Covered: 1.Array addressing. 2.
Introduction to Grid Computing Felix Hageloh Roberto Valenti Deployment of a Language Detector Grid Service University of Amsterdam,
Database Management Supplement 1. 2 I. The Hierarchy of Data Database File (Entity, Table) Record (info for a specific entity, Row) Field (Attribute,
1 ECE 1304 Introduction to Electrical and Computer Engineering Section 1.7 Linear Algebra with MATLAB.
Figure 6. Parameter Calculation. Parameters R, T, f, and c are found from m ij. Patient f : camera focal vector along optical axis c : camera center offset.
Performed by: Dor Kasif, Or Flisher Instructor: Rolf Hilgendorf Jpeg decompression algorithm implementation using HLS PDR presentation Winter Duration:
CS 450 Modelling and Simulation Dr. X. Topics Simulation Vs Games Analog Vs Digital General Algorithmic Design.
Team Members Ming-Chun Chang Lungisa Matshoba Steven Preston Supervisors Dr James Gain Dr Patrick Marais.
Soon Joo Hyun Database Systems Research and Development Lab. US-KOREA Joint Workshop on Digital Library t Introduction ICU Information and Communication.
A search engine is a web site that collects and organizes content from all over the internet Search engines look through their own databases of.
How a Computer Processes Data. With today’s technology a little knowledge about what’s inside a computer can make you a more effective user and help you.
Peeking at Programming with JavaScript. So what’s JavaScript ? A programming language built into your Web Browser program. Adds fun and interactivity.
Playing Tic-Tac-Toe with Neural Networks
Machine Machine language is PL in which program instructions are written in strings of 0s and 1s.The computer circuitry is wired in a manner that it can.
ICS312 Introduction to Compilers Set 23. What is a Compiler? A compiler is software (a program) that translates a high-level programming language to machine.
SCRATCH ScratchScratch is a programming language that makes it easy to create your own interactive stories, animations, games, music, and art -- and share.
Understanding Web-Based Digital Media Production Methods, Software, and Hardware Objective
What is Multimedia Anyway? David Millard and Paul Lewis.
3D Motion Classification Partial Image Retrieval and Download Multimedia Project Multimedia and Network Lab, Department of Computer Science.
PROGRAMMING (1) LECTURE # 1 Programming and Languages: Telling the Computer What to Do.
Advanced Image Processing
3D Motion Classification Partial Image Retrieval and Download
CSCI-235 Micro-Computer Applications
PEGASUS: A frame for GNSS Data Evaluation
Artificial Intelligence and Lisp Lecture 13 Additional Topics in Artificial Intelligence LiU Course TDDC65 Autumn Semester,
FORMAL SYSTEM DEVELOPMENT METHODOLOGIES
CIS Introduction to Computer Vision
Hello World 2 What does all that mean?.
Senior Design Capstone Project I
Formal Definitions for Turing Machines
Overview of Computer system
Presentation transcript:

The Computer Vision Game Assistant C H E C K E R S M A T E S Levante Savo, Camelia Popa, Serban Meza, Oscar Medina, Ross Foley

 Build a Machine Vision System that: 1. Reads the current state of a board game using a webcam 2. Feeds the current game state into a game playing engine 3. Retrieves a suggestion for the next move 1

 Game: Checkers/Draughts  Very popular  Many game playing engines available on the web  Pieces relatively easy to segment  Programming Language: Matlab  Powerful IP functionality  Direst access to webcam using Simulink  Simple access to game playing engine.exe file 2

3

 Image taken every 2 seconds  Movement Detection  Compares image to reference image  If large difference, presume a hand is obstructing the view and no game is extracted  If small difference, give image to the game extraction module and this image becomes the reference 4

Board & Piece Detection & Combination 5 C H E C K E R S M A T E S

6

7

 Centroid positions combined with box information  8x8 matrix created  Each entry represents 1 box on the board  Contains flags indicating whether box is not used, empty, black/white, man/king 10

Query Generation & Results Visualisation 11 C H E C K E R S M A T E S

12  Found on the web  Application written in C++  Takes 8x8 matrix as input  Outputs 2 co-ordinates, starting position and finishing position  Also a string detailing an error or if a player has won/lost

13

14

15